package com.deyuanyun.pic.ctrl.controller.vo;


import com.deyuanyun.pic.common.util.poi.annotation.ExcelWriteColumn;
import com.deyuanyun.pic.ctrl.enumeration.EqptTypeEnum;
import com.deyuanyun.pic.ctrl.enumeration.ExceptionHandlingStateEnum;

import java.math.BigDecimal;
import java.util.Date;

/**
 * R_6阴保设施运行异常记录
 */
public class RecodeExceptionVO {
    /**
     * 主键
     */
    private String id;

    /**
     * 所属管道名称
     */
    @ExcelWriteColumn
    private String pipeLineName;

    /**
     * 测试桩编号
     */
    @ExcelWriteColumn
    private String teststationnumber;

    /**
     * 所属场站阀室名称
     */
    @ExcelWriteColumn
    private String pipeValveroomName;

    /**
     * 设备ID
     */
    private String eqptId;

    /**
     * 设备类型
     */
    private EqptTypeEnum eqptType;

    /**
     * 设备类型名称
     */
    @ExcelWriteColumn
    private String eqptType_label;

    /**
     * 设备编号(自定义编号)
     */
    @ExcelWriteColumn
    private String eqptNumber;

    /**
     * 运行记录编号（这个字段对应多张表，所以尽量不要用于关联查询）
     */
    private String recodeId;

    /**
     * 异常情况
     */
    @ExcelWriteColumn
    private String description;

    /**
     * 异常状态（未处理：UNTREATED、已处理：PROCESSED）
     */
    @ExcelWriteColumn
    private ExceptionHandlingStateEnum stated;

    /**
     * 经度
     */
    private BigDecimal  lng;

    /**
     * 纬度
     */
    private BigDecimal lat;

    /**
     * 记录时间
     */
    @ExcelWriteColumn
    private Date recordTime;

    /**
     * 处理意见
     */
    private String treatOpinion;

    /**
     * 处理记录
     */
    private String treatRecord;

    /**
     * 备注
     */
    private String remarks;

    /**
     * @return 主键
     */
    public String getId() {
        return id;
    }

    /**
     * @param id
     *            主键
     */
    public void setId(String id) {
        this.id = id == null ? null : id.trim();
    }

    /**
     * @return 所属管道
     */
    public String getPipeLineName() {
        return pipeLineName;
    }

    public void setPipeLineName(String pipeLineName) {
        this.pipeLineName = pipeLineName;
    }

    /**
     * @return 所属场站阀室
     */
    public String getPipeValveroomName() {
        return pipeValveroomName;
    }

    public void setPipeValveroomName(String pipeValveroomName) {
        this.pipeValveroomName = pipeValveroomName;
    }

    /**
     * @return 测试桩编号
     */
    public String getTeststationnumber() {
        return teststationnumber;
    }

    /**
     * @param teststationnumber
     *            测试桩编号
     */
    public void setTeststationnumber(String teststationnumber) {
        this.teststationnumber = teststationnumber == null ? null : teststationnumber.trim();
    }

    /**
     * @return 设备编号
     */
    public String getEqptId() {
        return eqptId;
    }

    /**
     * @param eqptId
     *            设备编号
     */
    public void setEqptId(String eqptId) {
        this.eqptId = eqptId == null ? null : eqptId.trim();
    }

    /**
     * @return 设备类型
     */
    public EqptTypeEnum getEqptType() {
        return eqptType;
    }

    public void setEqptType(EqptTypeEnum eqptType) {
        this.eqptType = eqptType;
    }

    public String getEqptType_label() {
        return eqptType != null ?eqptType.getLabel():null;
    }

    public void setEqptType_label(String eqptType_label) {
        this.eqptType_label = eqptType_label;
    }

    /**
     * @return 设备编号(自定义编号)
     */
    public String getEqptNumber() {
        return eqptNumber;
    }

    /**
     * @param eqptNumber
     *            设备编号(自定义编号)
     */
    public void setEqptNumber(String eqptNumber) {
        this.eqptNumber = eqptNumber == null ? null : eqptNumber.trim();
    }

    /**
     * @return 运行记录编号（这个字段对应多张表，所以尽量不要用于关联查询）
     */
    public String getRecodeId() {
        return recodeId;
    }

    /**
     * @param recodeId
     *            运行记录编号（这个字段对应多张表，所以尽量不要用于关联查询）
     */
    public void setRecodeId(String recodeId) {
        this.recodeId = recodeId == null ? null : recodeId.trim();
    }

    /**
     * @return 异常情况
     */
    public String getDescription() {
        return description;
    }

    /**
     * @param description
     *            异常情况
     */
    public void setDescription(String description) {
        this.description = description == null ? null : description.trim();
    }
    /**
     * @param stated
     *            异常状态（未处理：UNTREATED、已处理：PROCESSED）
     */
    public void setStated(ExceptionHandlingStateEnum stated) {
        this.stated = stated;
    }
    /**
     * @return 异常状态（未处理：UNTREATED、已处理：PROCESSED）
     */
    public String getStated() {
        return stated != null ?stated.getLabel():null;
    }

    public BigDecimal getLng() {
        return lng;
    }

    public void setLng(BigDecimal lng) {
        this.lng = lng;
    }

    public BigDecimal getLat() {
        return lat;
    }

    public void setLat(BigDecimal lat) {
        this.lat = lat;
    }

    /**
     * @return 记录时间
     */
    public Date getRecordTime() {
        return recordTime;
    }

    /**
     * @param recordTime
     *            记录时间
     */
    public void setRecordTime(Date recordTime) {
        this.recordTime = recordTime;
    }

    /**
     * @return 处理意见
     */
    public String getTreatOpinion() {
        return treatOpinion;
    }

    /**
     * @param treatOpinion
     *            处理意见
     */
    public void setTreatOpinion(String treatOpinion) {
        this.treatOpinion = treatOpinion == null ? null : treatOpinion.trim();
    }

    /**
     * @return 处理记录
     */
    public String getTreatRecord() {
        return treatRecord;
    }

    /**
     * @param treatRecord
     *            处理记录
     */
    public void setTreatRecord(String treatRecord) {
        this.treatRecord = treatRecord == null ? null : treatRecord.trim();
    }

    /**
     * @return 备注
     */
    public String getRemarks() {
        return remarks;
    }

    /**
     * @param remarks
     *            备注
     */
    public void setRemarks(String remarks) {
        this.remarks = remarks == null ? null : remarks.trim();
    }
}